/*
 * @lc app=leetcode.cn id=128 lang=java
 *
 * [128] 最长连续序列
 */

// @lc code=start
class Solution {
    public int longestConsecutive(int[] nums) {
        int res = 0;
        Set<Integer> set = new HashSet<>();

        for(int num : nums){
            set.add(num);
        }

        for(int num : nums) {
            if(!set.contains(num + 1)) {        // 不包含num+1，说明num是连续序列的最大值
                
                int max = 0;
                while(set.contains(num--)) {
                    max++;
                }
                res = Math.max(res, max);
            }
        }
        return res;
    }
}
// @lc code=end

